package model.reference;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

import model.domain.Category;

public class Categories {

	// ALL
	public final static Category ALL = new Category("Toutes", null, true);

	// Vehicules
	public final static Category CAR = new Category("Voitures", null, false);
	public final static Category MOTORBIKE = new Category("Motos", null, false);
	public final static Category CARAVAN = new Category("Caravanes", null,
			false);
	public final static Category BOATING = new Category("Nautisme", null, false);

	public final static Category ALL_CAR = new Category("Vehicules",
			new ArrayList<Category>(Arrays.asList(CAR, MOTORBIKE, CARAVAN,
					BOATING)), true);

	// House
	public final static Category HOUSE = new Category("Maison", null, true);

	// Multimedia
	public final static Category COMPUTER = new Category("Informatique", null,
			false);
	public final static Category GAME = new Category("JeuxVideo", null, false);
	public final static Category PHONE = new Category("Telephonie", null, false);

	public final static Category ALL_MULTIMEDIA = new Category("Multimedia",
			new ArrayList<Category>(Arrays.asList(COMPUTER, GAME, PHONE)), true);

	// Hobbies
	public final static Category ANIMALS = new Category("Animaux", null, false);
	public final static Category WINE = new Category("Vin & Gastronomie", null,
			false);
	public final static Category MUSICAL_INSTRUMENT = new Category(
			"Instrument de musique", null, false);
	public final static Category GAME_TOY = new Category("Jeux & Jouets", null,
			false);
	public final static Category HOBBIES = new Category("Loisirs",
			new ArrayList<Category>(Arrays.asList(ANIMALS, WINE,
					MUSICAL_INSTRUMENT, GAME_TOY)), true);

	// Jobs
	public final static Category JOBS = new Category("Emploi", null, true);

	// Lessons
	public final static Category LESSONS = new Category("Cours", null, true);

	// Building
	public final static Category BUILDING_SALES = new Category("Ventes", null,
			false);
	public final static Category BUILDING_RENT = new Category("Locations",
			null, false);
	public final static Category BUILDING_COLOCATION = new Category(
			"Colocations", null, false);
	public final static Category BUILDING_HOLIDAY_RENT = new Category(
			"Locations Vacance", null, false);

	public final static Category BUILDING = new Category(
			"Immobilier",
			new ArrayList<Category>(Arrays.asList(BUILDING_SALES,
					BUILDING_RENT, BUILDING_COLOCATION, BUILDING_HOLIDAY_RENT)),
			true);

	//

	public static final List<Category> CATEGORIES_LIST = new ArrayList<Category>(
			Arrays.asList(ALL, CAR, MOTORBIKE, CARAVAN, BOATING, ALL_CAR,
					HOUSE, COMPUTER, GAME, PHONE, ALL_MULTIMEDIA, ANIMALS,
					WINE, MUSICAL_INSTRUMENT, GAME_TOY, HOBBIES, JOBS, LESSONS,
					BUILDING_SALES, BUILDING_RENT, BUILDING_COLOCATION,
					BUILDING_HOLIDAY_RENT, BUILDING));

}
